package vue;

import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Graphics;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JToolBar;

import controleur.MonControleurBoutonOutil;

public class PaletteOutils extends JToolBar{
	private Dessin dessinOutils;
	
	PaletteOutils(Dessin d){
		/*changer le layout de la palette en box avec deux cases
		 * créer 2 JPanels
		 * Dans le 1er on met tous les boutons outils (avec un flowlayout)
		 * Dans le 2eme on met des panneau de controle des outils (cardlayout)
		 */
		this.setFloatable(false);
        this.setPreferredSize(new Dimension(150,100));
        this.setLayout(new FlowLayout());
        this.setBackground(new Color((int) 0xc8ddf2));
        this.dessinOutils = d;
        MonControleurBoutonOutil mcb = new MonControleurBoutonOutil(dessinOutils,this);
        BoutonOutils bouton2 = new BoutonOutils("Point", mcb);
        BoutonOutils bouton3 = new BoutonOutils("Segment", mcb);
        BoutonOutils bouton4 = new BoutonOutils("Polygone", mcb);
        BoutonOutils bouton5 = new BoutonOutils("Pinceau", mcb);
        BoutonOutils bouton6 = new BoutonOutils("Rond",mcb);
        BoutonOutils bouton10 = new BoutonOutils("Clear",mcb);
        
        this.add(bouton2);
        this.add(bouton3);
        this.add(bouton4);
        this.add(bouton5);
        this.add(bouton6);
        this.add(bouton10);
        
        OutilSelection os = new OutilSelection(dessinOutils);
        this.add(os); 
	}
}

class OutilSelection extends JLabel{
	private Dessin dessinPalette;
	public OutilSelection(Dessin d){
	super("Outil actuel : " +d.getChoixOutil());
	this.dessinPalette = d;
	}
	
	public void paintComponent(Graphics g) {
	super.paintComponent(g);
	this.setText("Outil actuel : "+dessinPalette.getChoixOutil());
	}
}

class BoutonOutils extends JButton{
	
	MonControleurBoutonOutil mcb;
	
	public BoutonOutils (String s, MonControleurBoutonOutil m){
		super(s);
		this.mcb=m;
		this.addActionListener(mcb);
		this.setPreferredSize(new Dimension(65,30));
	}
}
